package net.joyphper.service;

import java.util.Date;
import java.util.Set;

import net.joyphper.bean.User;
import net.joyphper.commons.exception.AppTranException;

public interface UserService {
	/**
	 * 通过登录Email查询一个用户
	 * @param loginMail
	 * @return
	 */
	User getUserByLoginMail(String loginMail);
	
	/**
	 * 通过ID查询一个用户
	 * @param id
	 * @return
	 */
	User getUserById(long id);
	
	/**
	 * 更新用户登录时间
	 * @param time
	 * @param id
	 * @throws AppTranException
	 */
	void updateLoginTime(Date time,long id)throws AppTranException;
	
	/**
	 * 更新用户登录密码
	 * @param pwd
	 * @param id
	 * @throws AppTranException
	 */
	void updatePwd(String pwd,long id) throws AppTranException;
	
	/**
	 * 获取用户所拥有的角色ID
	 * @param userId
	 * @return
	 */
	Set<Long> getRolesIdByUserId(Long userId);
	
	/**
	 * 获取用户所拥有的资源
	 * @param userId
	 * @return
	 */
	Set<String> getResourcesIdByUserId(Long userId);
}
